public class JenisSegitiga {
  /**
   * @param a
   * @param b
   * @param c
   * @return int Kode untuk jenis-jenis segitiga:
   * 0 Jika a, b, dan c tidak mungkin membentuk segitiga
   * 1 Jika segitiga yang dibentuk adalah segitiga sembarang
   * 2 Jika segitiga yang dibentuk adalah segitiga sama sisi ->sama kaki
   * 3 Jika segitiga yang dibentuk adalah segitiga sama kaki -> sama sisi
   * 4 Jika segitiga yang dibentuk adalah segitiga siku-siku -> siku-siku
   * 5 siku2 samakaki
  */
  public static int jenis (double a, double b, double c) {
int kode;
    if (a == b && b == c){
    return kode = 3;
    }
    
    
    
    if(a == b && a != c){
    return kode = 2;
    }
    
    if(b == c && b !=a){
    return kode = 2;
    }
  
  
    
    if (a > b && a > c){
      if ( (a*a) == (b*b)*(c*c) ){
        return kode = 4;
      }
      else if( (a+b)>c || (a+c)>b ){
        return kode = 0;
      }
      else 
      return kode = 1;
    }
    
    if (b > a && b > c){
      if ( (b*b) == (a*a)*(c*c) ){
        return kode = 4;
      }
      else if( (b+a)>c || (b+c)>a ){
        return kode = 0;
      }
      else
      return kode = 1;
    }
    
    if (c > a && c > b){
      if ( (c*c) == (a*a)*(b*b) ){
        return kode = 4;
      }
      else if( (c+a)>b || (c+b)>a ){
        return kode = 0;
      }
      else
      return kode = 1;
    }  
   return 0;
  }
}
